rational software java tool selection criteria consulting control beratung ibm user needs automation development industrial engineering software tools unternehmensberatung